Nuprl Lemma : ma-interface-triggers-do-apply 11,40

es:ES, T:Type, I:MaInterface(T), i:Id.
(i  ma-interface-locs(I))
 ma-interface-consistent2(es;I)
 (e:E.
 ((e  [[I|i]]))  (do-apply(ma-interface-code(I;i;kind(e))((state when e));val(e))  T)) 
latex


DefinitionsFalse, P  Q, A, x:AB(x), left + right, P  Q, Dec(P), ma-interface-consistent(es;X), [[I|i]], t  T, e  X, b, x:AB(x), E, ma-interface-consistent2(es;I), Id, MaInterface(T), Type, ES, Knd, ma-interface-dom(I;i), kind(e), (x  l), hasloc(k;i), {x:AB(x)} , x:A  B(x), a:A fp B(a), Atom$n, s = t, a < b, e@iP(e), t.1, if b then t else f fi , val(e), ma-interface-valtype(I;i;k), Top, Void, , Unit, ff, tt, IdLnk, rcv(l,tg), locl(a), let x,y = A in B(x;y), EqDecider(T), EOrderAxioms(Epred?info), f(a), EState(T), kindcase(ka.f(a); l,t.g(l;t) ), Msg(M), type List, , , val-axiom(E;V;M;info;pred?;init;Trans;Choose;Send;val;time), e < e', r  s, constant_function(f;A;B), P & Q, acttype(e), rcvtype(e), case b of inl(x) => s(x) | inr(y) => t(y), valtype(e), S  T, vartype(i;x), ma-interface-ds(I;i), f(x)?z, P  Q, P  Q, xt(x), State(ds), state@i, IdDeq, x.A(x), @i discrete ds, <ab>, , {T}, SQType(T), (state when e), suptype(ST), ma-interface-code(I;i;k), do-apply(f;x), A c B, s ~ t
Lemmasma-interface-triggers-can-apply, Id sq, do-apply wf, es-state-when wf, es-state-subtype2, es-state-subtype, fpf-cap wf, Id wf, id-deq wf, top wf, subtype rel dep function, subtype rel self, es-state-subtype-iff, es-rcvtype wf, es-acttype wf, locl wf, rcv wf, btrue wf, bfalse wf, ma-interface-valtype wf, ma-interface-dom-hasloc, es-kind wf, hasloc wf, assert wf, es-is-interface wf, ma-interface-triggers wf, ma-interface-consistent-consistent2, ma-interface-triggers-loc, decidable l member, decidable equal Kind, ma-interface-triggers-kind

origin